/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package br.edu.unipampa.desafios;

import br.edu.unipampa.personagem.Mensageiro;
import br.edu.unipampa.recurso.Arma;
import br.edu.unipampa.recurso.Equipamento;

/**
 *
 * @author User
 */
public class Desafios {private String nome;
    private String descricaoDoDesafio;
    private Equipamento utilizarItem;
    private int perderForca;

    public Desafios() {
    }

    public Desafios(String Nome, String Estoria, Equipamento Utilizar, int perderForca) {
        this.nome = Nome;
        this.descricaoDoDesafio = Estoria;
        this.utilizarItem = Utilizar;
        this.perderForca = perderForca;
    }

    public String getNome() {
        return nome;
    }

    public void setNome(String nome) {
        this.nome = nome;
    }

    public String getDescricaoDoDesafio() {
        return descricaoDoDesafio;
    }

    public void setDescricaoDoDesafio(String descricaoDoDesafio) {
        this.descricaoDoDesafio = descricaoDoDesafio;
    }

    public Equipamento getUtilizarItem() {
        return utilizarItem;
    }

    public void setUtilizarItem(Equipamento utilizarItem) {
        this.utilizarItem = utilizarItem;
    }

    public int getPerderForca() {
        return perderForca;
    }
    
    public void setPerderForca(int perderForca) {
        this.perderForca = perderForca;
    }

    public boolean utilizarRecursoDesafio(Mensageiro personagem) {
        boolean passou = false;
        for (int i = 0; i < personagem.getBolsa().size(); i++) {
            if (personagem.getBolsa().get(i) != null || personagem.getBolsa().get(i) == (utilizarItem)) {
                personagem.setVida(personagem.getVida() - getPerderForca());
                passou = true;
                System.out.println("");
                break;

            } else {
                passou = false;
                System.out.println("");
            }
        }
        return passou;
    }
    public void batalhaSoldado(Arma arma, Inimigo ini,  Mensageiro msg) {

        int dano = 0;
        if (arma.getDano() >= ini.getDanoArma()) {
            System.out.println("MSG GANHOU");
        } else {
            System.out.println("MSG PERDEU");
        }

        dano = arma.getDano() - ini.getDanoArma();
        pontosVidaBatalha(msg, dano, ini);
    }

    public void pontosVidaBatalha(Mensageiro mens, int dano, Inimigo ini) {

        if (dano <= 0) {
            ini.perderPontosDeVida(dano * -1);
        } else {
            mens.perderVida(dano);
        }

    }

}